---
title: clsRequestManager
summary: API reference for clsRequestManager.
status: draft
owner: SAIF Claims BOF team
last_reviewed: 2026-08-21
library: SAIF.Application.Claim.Legal
reference_type: embedded
---

# clsRequestManager

`clsRequestManager` drives the hearing-request intake and update workflow: capturing request issues, selecting the assigned provider/attorney, managing case consolidation, generating recon-request letters, syncing the WCD number to Guidewire, and writing an audit case note whenever the worker's attorney or attorney firm changes on save ([Business rules](../../business-rules.md)). It reads the current user's default printer at construction time to support recon-request letter print submission. It inherits `LegalManagerBase` (this library) → `ClaimAppManager` (`SAIF.Application.Claim`).

## Purpose
- Capture hearing-request issues and manage provider/attorney selection for a legal case.
- Consolidate the case with related cases when consolidation membership changes, translating a specific business-rule failure ("Schedule date must be in the future") into a user-facing error instead of propagating the raw exception ([Business rules](../../business-rules.md)).
- Generate recon-request letters via the shared `LegalManagerBase.insertLetterRequest` and Appworx batch print submission.
- Sync the WCD (Workers' Compensation Division) number to Guidewire when supplied on save, tolerating integration failures without failing the save ([Business rules](../../business-rules.md)).
- Record a system audit case note whenever the worker's attorney or attorney firm changes at save time ([Business rules](../../business-rules.md)).

## Context
- Namespace: `SAIF.Application.Claim.Legal`
- Assembly/package: `SAIF.Application.Claim.Legal.dll` (embedded library, referenced by the `Legal` web front end)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `New(inDatabase, inSecurityPrincipal)` | `Public Sub New(inDatabase As String, inSecurityPrincipal As clsSecurityPrincipal)` | Constructs the manager for the given database context and authenticated principal, calling into `LegalManagerBase.New` and capturing the principal's default printer for recon-request letter printing. |
| `SendReconRequest` | `Public Property SendReconRequest As Boolean`* | Flags that a recon-request letter should be generated and mailed for this case on save. |
| `OnWrite()` | `Protected Overrides Function OnWrite() As Boolean` | Attaches a "Located at" file location on new cases; creates audit case notes when the worker attorney/firm changed ([Business rules](../../business-rules.md)); sets `ReconLetterMailedDate` when `SendReconRequest` is set on a new case; consolidates cases when membership changed, converting the "Schedule date must be in the future" exception into a user-facing message ([Business rules](../../business-rules.md)); saves the case; and, on success, syncs WCD data and optionally submits the recon-request Appworx letter job. |
| `UpdateWcdData()` | `Public Sub UpdateWcdData()` | Builds a `WcdRequest` (wcdNumber, wcdUser) and calls the Guidewire `GWClaimDataApi` client via an `Update` route to `claims/{claimID}/wcdNumber` when `m_WCDNum` was supplied; exceptions are caught and logged without failing the save ([Business rules](../../business-rules.md)). |
| `CreateFirmChangedCaseNote()` | `Private Sub CreateFirmChangedCaseNote()`* | Creates an audit case note (`CategoryCode = "RFH"`, `CreateUser = "SYSTEM"`) recording the old and new worker-attorney firm names ([Business rules](../../business-rules.md)). |
| `CreateAttorneyChangedCaseNote()` | `Private Sub CreateAttorneyChangedCaseNote()`* | Creates an audit case note (`CategoryCode = "RFH"`, `CreateUser = "SYSTEM"`) recording the old and new worker-attorney names ([Business rules](../../business-rules.md)). |

## Behavioral notes
- `OnWrite()` short-circuits a specific consolidation failure message ("Schedule date must be in the future") into a user-facing error while rethrowing any other exception from `Consolidations.ConsolidateCases` unhandled ([Business rules](../../business-rules.md)).
- WCD-number sync and any Guidewire integration failure follows this library's best-effort integration pattern: logged via `Logging.clsLogError.CreateError`, never surfaced to the caller or allowed to fail the save ([Business rules](../../business-rules.md)).

## Constraints and usage notes
- `SendReconRequest` only triggers a mailed date/letter submission on a new case, per the `OnWrite()` logic; setting it on an existing case has no observed effect within this library*.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `SAIF.Application.Claim.Legal\LegalNet\clsRequestManager.vb`
